package com.study.mybatisplus.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;

/**
 * <p>
 * 用户事件
 * </p>
 *
 * @author flwu
 * @since 2020-03-20
 */
@TableName("tbl_user_event")
public class UserEvent implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 事件类型，1：通讯录；2：商品；3：个人中心
     */
    private Integer type;

    /**
     * 状态，1：未点击；2：已点击
     */
    private Boolean status;

    /**
     * 事件参数
     */
    private String extra;

    /**
     * 事件累加次数
     */
    private Integer time;

    /**
     * 事件刷新事件
     */
    private LocalDateTime refreshDatetime;

    /**
     * 创建时间
     */
    private LocalDateTime createDatetime;

    /**
     * 最后更新时间
     */
    private LocalDateTime updateDatetime;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }
    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }
    public Boolean getStatus() {
        return status;
    }

    public void setStatus(Boolean status) {
        this.status = status;
    }
    public String getExtra() {
        return extra;
    }

    public void setExtra(String extra) {
        this.extra = extra;
    }
    public Integer getTime() {
        return time;
    }

    public void setTime(Integer time) {
        this.time = time;
    }
    public LocalDateTime getRefreshDatetime() {
        return refreshDatetime;
    }

    public void setRefreshDatetime(LocalDateTime refreshDatetime) {
        this.refreshDatetime = refreshDatetime;
    }
    public LocalDateTime getCreateDatetime() {
        return createDatetime;
    }

    public void setCreateDatetime(LocalDateTime createDatetime) {
        this.createDatetime = createDatetime;
    }
    public LocalDateTime getUpdateDatetime() {
        return updateDatetime;
    }

    public void setUpdateDatetime(LocalDateTime updateDatetime) {
        this.updateDatetime = updateDatetime;
    }

    @Override
    public String toString() {
        return "UserEvent{" +
            "id=" + id +
            ", userId=" + userId +
            ", type=" + type +
            ", status=" + status +
            ", extra=" + extra +
            ", time=" + time +
            ", refreshDatetime=" + refreshDatetime +
            ", createDatetime=" + createDatetime +
            ", updateDatetime=" + updateDatetime +
        "}";
    }
}
